{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "03eb7eba",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-12-01T02:08:50.252040Z",
     "start_time": "2024-12-01T02:08:50.232583Z"
    }
   },
   "outputs": [],
   "source": [
    "# 数据增强函数\n",
    "def augment_image(image):\n",
    "    # 确保输入图像为灰度图（单通道）\n",
    "    image = image.astype(np.uint8)\n",
    "\n",
    "    # 随机旋转\n",
    "    angle = np.random.uniform(-10, 10)  # 随机旋转角度\n",
    "    M = cv2.getRotationMatrix2D((14, 14), angle, 1.0)  # 计算旋转矩阵\n",
    "    rotated = cv2.warpAffine(image, M, (28, 28))  # 进行旋转\n",
    "\n",
    "    # 随机平移\n",
    "    tx = np.random.randint(-3, 3)  # 随机水平平移\n",
    "    ty = np.random.randint(-3, 3)  # 随机垂直平移\n",
    "    translated = cv2.warpAffine(rotated, np.float32([[1, 0, tx], [0, 1, ty]]), (28, 28))\n",
    "\n",
    "    # 随机缩放\n",
    "    scale = np.random.uniform(0.9, 1.1)  # 随机缩放因子\n",
    "    new_size = int(28 * scale)  # 计算缩放后的尺寸\n",
    "    scaled_image = cv2.resize(translated, (new_size, new_size))  # 缩放图像\n",
    "\n",
    "    # 如果缩放后尺寸小于28x28，填充图像到28x28\n",
    "    if new_size < 28:\n",
    "        delta_w = 28 - new_size\n",
    "        delta_h = 28 - new_size\n",
    "        top, bottom = delta_h // 2, delta_h - (delta_h // 2)\n",
    "        left, right = delta_w // 2, delta_w - (delta_w // 2)\n",
    "        scaled = cv2.copyMakeBorder(scaled_image, top, bottom, left, right, cv2.BORDER_CONSTANT, value=0)\n",
    "    else:\n",
    "        # 如果缩放后尺寸大于28x28，裁剪图像到28x28\n",
    "        start_x = (new_size - 28) // 2\n",
    "        start_y = (new_size - 28) // 2\n",
    "        scaled = scaled_image[start_y:start_y + 28, start_x:start_x + 28]\n",
    "\n",
    "    return scaled"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "94ab8fb6",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-12-01T02:09:11.986201Z",
     "start_time": "2024-12-01T02:08:59.682663Z"
    }
   },
   "outputs": [],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "plt.rcParams[\"font.family\"] = \"SimHei\"\n",
    "plt.rcParams[\"axes.unicode_minus\"] = False\n",
    "from sklearn.datasets import fetch_openml\n",
    "import numpy as np\n",
    "import cv2\n",
    "\n",
    "# 加载数据集\n",
    "mnist = fetch_openml('mnist_784', parser=\"auto\")\n",
    "images = mnist.data.values.reshape(-1, 28, 28)  # 转换为28x28灰度图格式"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "d1f1dcf5",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-12-01T02:31:19.268813Z",
     "start_time": "2024-12-01T02:31:17.881124Z"
    }
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAACUsAAAQ6CAYAAAB3Mr4YAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAB7CAAAewgFu0HU+AACFHElEQVR4nOzdd5SV5dk37HPoHQ0oYgUTExVLIuaxoih2RaPYEgskyGvvgnmUoCRGY0JEUYIBfAQ14hs0GgImGls0aiz4YDfEDiJSlC4wwP7+8GNekD7XntkzXMex1qw1zL5/+zphKScz85t7lxUKhUIAAAAAAAAAAABs5OqUegAAAAAAAAAAAIDqoCwFAAAAAAAAAABkQVkKAAAAAAAAAADIgrIUAAAAAAAAAACQBWUpAAAAAAAAAAAgC8pSAAAAAAAAAABAFpSlAAAAAAAAAACALChLAQAAAAAAAAAAWVCWAgAAAAAAAAAAsqAsBQAAAAAAAAAAZEFZCgAAAAAAAAAAyIKyFAAAAAAAAAAAkAVlKQAAAAAAAAAAIAvKUgAAAAAAAAAAQBaUpQAAAAAAAAAAgCwoSwEAAAAAAAAAAFlQlgIAAAAAAAAAALKgLAUAAAAAAAAAAGShXqkHgJpmzpw5sXjx4qI/77Jly6K8vDzmz58fW2+9dTRp0mSVa+6+++4488wzi3726pxzzjkxZMiQajkLAJazZwGg6tizAFB17FkAqDr2LFDdlKXga374wx/Gww8/XKVnvPTSS7Hnnnuu8vGGDRtW6bmlOgsAlrNnq0Z5eXnUqVMn6tatW63nAlCz2LPFNWXKlHjuuedi6tSpUb9+/dhxxx1j3333jfr161fL+QDULPYsAFQdexaobspS8DXNmjUr2dkrLsixY8fGXnvttcZr33///dh+++03+IzNNtssIiIaNWq04QNWUqFQiGOPPTbGjh0bTz75ZHTu3LnazgagZrFni2P27Nlx8803x+jRo+O9996LhQsXRt26daNDhw7x4x//OM4777xo0KBBlc4AQM1jzxbHjBkz4oILLojRo0fHsmXLVnqsTZs28ctf/jJ69uxZpTMAUPPYs1Vr0qRJscsuu8ScOXN8DRkgQ/ZsutmzZ8emm24ahUJhndeOGjUqTj311CqbBWoDZSn4muXfWKxbt24sWbJkndffdttt8c1vfjMOOOCAaNq06RqvW/E2j2ta+Csu45YtW0br1q1Xe92kSZOiU6dOceCBB8Yll1wSRx55ZJSVla1z1jWdVdVuuOGGGDt2bLWdB0DNZc+mmzhxYhx++OHx4YcfrvTxpUuXxmuvvRaXXnpp3HPPPfHwww/H5ptvXmVzAFDz2LPp5syZEwcccEC8/fbbERFRr169aNOmTUybNi3Ky8vjs88+i7POOiumTJkSP/vZz6psDgBqHnu2avXs2TPmzJlTkrMBKD17Nt348ePXqygFfEVZCr5mQ1++pl+/fvHFF1/ErrvuGq+++uoal2KdOnWiYcOGa12CderUWa8zf/nLX8bixYvj73//e8yaNSsOPfTQDX4ZgOp6mZ4RI0bE1VdfXS1nAVDz2bNpZs2aFYcddlh89NFHERHRtm3bOOGEE6JDhw7xn//8J4YPHx5z586N8ePHxxlnnBGPPPJIlcwBQM1kz6a77LLL4u23346ysrLo169fXHbZZdGiRYuYP39+DB48OPr27Rvl5eVx7bXXxoknnhg77bRTlc0CQM1iz1adIUOGxN///vdqPxeAmsOeTTd+/PiI+KqQNWDAgLVe27FjxyqbA2oLZSlI8M4778QXX3wRERH9+/ff4Pbw163PMn755Zdj2LBhERHRpEmTGDx4cMyePXuN1zdt2jQaN268yser45PeIUOGxAUXXFDl5wCwcbJnV3XVVVdVFKXOOuusGDhw4Eo/EdWzZ8/Yd999Y86cOfHoo4/GE088EQcffHCVzAJA7WbPrur555+PO+64IyIirrvuurjqqqtWmqVPnz5Rp06d6N27dyxbtixGjBgRN954Y5XMAkDtZs+uv/fffz969+5drWcCULvZs6u3vCy10047+f4srAdlKUjwxBNPRETEpptuGsccc0zy861rGS9ZsiTOOeecWLZsWURELFiwIP7rv/5rrc83YcKE2HXXXTf4rBTl5eVx5ZVXxsCBAyMiYptttolJkyZV2XkAbJzs2ZVNnjw5hg8fHhERp5xySgwdOnSVLwR06NAh+vbtG3369ImIiDFjxihLAbBa9uyqBg0aFBER3/72tyt26dedffbZ0adPnygUCvHqq69WyRwA1H727PopFArx4x//OObPn19tZwJQ+9mzq7e8LLW6c4FVVd+/eqGW+853vhNlZWUrvZ1//vkREfHFF19EgwYNVnn862+jR49e6xnrWpBXXHFFxaJbH+ecc84aF2Jqy3ptzj333Iqi1BVXXBH9+/evsrMA2DjYs+t23333RXl5eTRo0CAGDBiwxjNWLEd98sknRZ8DgNrHnl23QqEQLVu2jO9///txySWXRL16q//5wubNm0fLli0j4qsfFAIAe7bybrnllnj66acjIqJr167Vdi4AtYc9u35mzZoV7733XkRE7LHHHlVyBmxslKVgPW2yySYR8dXtEZs2bbrebyu+Bm6LFi0qff4f//jHuOWWWyp+/be//S0KhcJKbwsXLow999wzIiLatWtXspcDmDFjRjRv3jzuvPPO+M1vflOtn2ADUDvZs+t2xRVXxNSpU+PFF1+Mrbfeeo3XLf8Jp4ivvvELAPbsupWVlcXtt98eL774Ypx77rlrvG7evHkxd+7ciIho3759dY0HQA1mz1bOxIkTK17ytnPnznHppZeWeCIAaiJ7dv2MHz++4mvB3//+96v9fKiNlKVgPdWvXz8iIg455JCYN2/eer8tf7mciIgGDRpU6uxx48bFmWeeGRH/r938ox/9KF555ZWVrrvooovi5ZdfjsaNG8fo0aOjWbNmlTovVadOneK1116LHj16lOR8AGofe3b9tGnTJnbfffe1XvPiiy9WvP/Nb36zqkcCoBawZ4vnrrvuiqVLl0ZEFOXlHgCo/ezZDbd06dLo3r17fPnll9GiRYsYMWKEH7gFYLXs2fXz0ksvRcRXv9eOHTtW+/lQGylLwXpa0y34N0RlPuEbN25cnHDCCbFo0aJo2bJlPPPMM3HAAQfE559/HgcddFA88sgjUSgU4vLLL4+hQ4dGvXr1YtSoURUN5lK4/PLLo127diU7H4Dax54tngceeKDi/aOPPrqEkwBQU9izxTFu3Ljo3bt3RETsvffeceyxx5Z4IgBqAnt2ww0YMCD+9a9/RUTEoEGDYrvttivxRADUVPbs+nn55Zcj4qs7W/32t7+N/fbbL9q0aRONGzeO7bffPs4888x47LHHSjIb1FTKUlDD7bXXXnHkkUdGixYt4pFHHol99903/vznP0fHjh1jzpw5cdRRR8V//dd/xU033RR169aNu+66K4477rhSjw0AtcLGtmdfeOGFePLJJyMiokOHDtGpU6cSTwRAzjaGPfuPf/wjBg0aFAcddFAcc8wxsWDBgvjOd74TDz74YMVPFgNAKdTWPfvmm2/GNddcExERxx9/fHTv3r3EEwHAqmrbnl3+agMTJ06Mvn37xnPPPRfTpk2LhQsXxgcffBB33313HHrooXHCCSfEl19+WbI5oSZJr2JCZh555JFqvSVw69at44EHHoh33303vvOd70TEV6/P+9e//jV23XXX+Oyzzyrawj/72c/ihz/8YbXNBgDFZs9W3rJly+Kiiy6q+HX//v29jAEAK7FnN1znzp1X+nX79u3jX//6V2yyySYlmQeAmsueXbclS5ZE9+7dY9GiRdGmTZv4/e9/X+qRAKgl7Nk1mzp1akyaNKni1126dInTTz89dtxxx1i6dGm88MILMXDgwJg8eXI8+OCDcdZZZ8Uf/vCHks0LNYUfgYM1WNPCrVu3bjRt2nS93xo2bJg8S926dSsW8dy5c2PIkCGx5557xmeffRYR/+91cq+99to46KCDYtSoUTF//vzkcwGgqtizxXfzzTdX/ARRly5dolu3biWeCIBSsWeLp1u3brHNNttU/PqDDz6II444Ij744IMSTgVAKdmzlXf99dfH+PHjIyJi2LBhsdlmm5VsFgBqJnt2wz3//PMV7w8cODAee+yx6NGjR+y9996x3377xWWXXRYTJkyIXXfdNSIi7r333oqXw4WcKUvB1yxdujQiIpo2bbraxw855JCYN2/eer8NHz48eaYvvvgiRo8eHd27d48tt9wyzjvvvPj444+jffv28cADD8R7770Xp5xySpSVlcVTTz0VP/rRj2LzzTePo446Kn7961/Ho48+GpMnT06eAwBS2bNV4/XXX4+rr746IiJatGgRd9xxR0nnAaA07Nniu//+++Pjjz+Ol19+Obp27RoRX73s7VFHHRWzZs0q2VwAVD97Ns2ECRPiuuuui4iInj17VuxVAIiwZ1Mcf/zxMWPGjHj77bfjkksuWe01rVq1ijvvvLPi10OHDq3yuaCmU5aCr5k3b15ERGy66aYrfby8vDz5uZcsWbJB18+YMSN22WWX+MY3vhEnn3xy3HXXXTFv3rxo3759DBkyJAYOHBht27aNdu3axX333RdvvPFG/PjHP47GjRvHggUL4q9//WtceeWVcfjhh8e4ceOS5weAVPZs8S1YsCBOOeWUWLhwYUREDB48OLbbbruSzQNA6dizVadjx44xZsyYOP/88yMi4p133ol+/fqVeCoAqpM9W3mLFy+O7t27R3l5ebRv3z4GDhxY5WcCULvYs2latWoVO+6441qv6dixY+y+++4REfHoo49Wx1hQoylLwdcsv3XiJptsstLHly/j5a+Ju75vZ5xxRsVzLF68eINmad26dVx00UUREdGoUaP4wQ9+EH/5y1/iP//5T/zoRz+Kc845J/bdd9/YZZddYuDAgbHZZpvF//zP/8Snn34aQ4YMiU6dOkXdunXjkEMOibPPPjvhTwUAisOeLb6zzz473n777YiI6NWrV5x++uklmwWA0rJnq96vf/3raN68eUREjB49usTTAFCd7NnK69+/f7z22mtRp06dGDlyZMUuBYDl7NnqscMOO0RExCeffBJz584t8TRQWvVKPQDUNB999FFExCqvlz5nzpzk567M0vnJT34SW2yxRXTp0mWlW0+++uqr0apVq5g6dWq8+eabcdlll8WVV14ZRx11VPz0pz+Nc845J84555yYPn36BjemAaCq2LPFdeutt8Y999wTERF77LFHDBo0qGSzAFB69mzVa9KkSey1117x2GOPxdSpU2P+/PlrfJkIADYu9mzlTJw4MW688caIiNhll13i1VdfjVdffXWV6/7zn/9UvP/ggw/GG2+8ERFfvezSuu6UAUDtZ89WjxXv1DVnzhwFZrKmLAUrmD9/fkyZMiUiItq1a7fSY88//3zF6+V+3U033RQ33HBDRES88sorsc0226z2usosnHr16sWxxx67ysc7deoUb7zxRjz77LMxaNCg+NOf/hTl5eUxduzYuP766yuu+/o/KgCgVOzZ4nrsscfisssui4iIzTffPB566KFo1KhRyeYBoLTs2TSLFy+ON998M95444044YQT1lqA8sVkgPzYs5U3ZcqUij+f1157LS688MJ1Zlb8QaA777xTWQpgI2fPpikUCvHKK6/E5ptvvsY/g+U++OCDive/fhcvyI2yFKzg9ddfr3j/68v466+Ru6ImTZqsdF3r1q2LPttyixcvjr59+8ahhx4aBx54YOy3336x3377xaRJk+KWW26JuXPnxs4771xl5wNAZdmzxfP666/HiSeeGEuWLIn69evH6NGj1/mJMAAbN3s2zYQJE2KvvfaKiIh58+bFueeeu8Zr33333Yj46gvL7ioFkAd7FgCqjj1beUuXLo127drF5MmT48orr4xf/epXa7x2ypQpFX/W22+/vc9nyV6dUg8ANcn//u//Vry/up9WKS8vj5NPPjkmTZq0Xs/3zDPPxC9+8YuizRcRcd9998VvfvObOOyww6JVq1Zx4oknxj333BPNmzePAQMGxO9///uingcAxWLPFsc777wThx12WMyePTsiIgYPHhwHHHBAiacCoNTs2TQdO3aMzTffPCIirr/++pg+ffpqrxs/fnzFF5c7depUbfMBUFr2bOV17tw5CoXCOt+efPLJisyTTz5Z8fEePXqUZG4Aqo89W3l169at+DO76667Yt68eWu8tn///lEoFCIiVnvXLMiNshSs4Kmnnqp4f5999lnl8euuuy5Gjx4d++yzT0yYMGGtz/X6669H165do1+/fnH22Wev8RaRK1q2bNk6r1m4cGHsscceUVZWFvPmzYsHHnggzjjjjGjTpk0cc8wxce+998aXX365zudZvgwBoLrYs+mmTp0ahx56aEydOjUiIi699NLo1atXlZwFQO1iz6apW7dunH/++RERMXny5OjWrVvMmjVrpWtmzpy50jdsl18PwMbPngWAqmPPpjnrrLMiIuLTTz+NSy+9dLVn3HrrrTFs2LCIiGjYsGFceumlRZ8DahtlKfj/LVmyJJ544omI+OoWj23btl3p8TFjxsR1110XERF16tSp+InTNWnevHlsscUWERExdOjQOPnkk2PRokVrzazPMv4//+f/xPjx42Py5Mnxu9/9Lvbff/8oKyuLxYsXx7hx4+K0006LAQMGrPN5ysvL13kNABSLPVscvXv3jsmTJ0dERKtWreJb3/pW3H777Wt9A2DjZ88WR58+fWKXXXaJiK9+EnmHHXaICy+8MAYOHBhXXHFFdOjQId54442IiOjVq1ccfvjhVTIHADWLPQsAVceeTXfSSSfF/vvvHxERw4cPj86dO8fQoUNj3LhxMXLkyOjatWtcdNFFUSgUoqysLIYNGxbbbrtt0eeA2qZeqQeAmmLs2LExY8aMiIg4/vjjV3rs2WefjR/96EexbNmy2GSTTeLhhx+OLbfccq3P165du3j22Wfj6KOPjhdeeCH+9Kc/xdFHHx1jxoxZ6TV0V7Q+y3i5LbfcMs4999w499xz48MPP4yRI0fGnXfeGXXr1o3evXuvM79kyZL1PgsAUtmz6RYvXhz3339/xa9nzpy5Xne0OOecc4o+CwA1iz1bHI0aNYpHH300jjvuuHjp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S+20006+PwvrQVkKNtDy2yxecMEFce2116702FNPPRUHHXRQREQ888wzscUWW6z0+IABAyo+8avsMlyxrbz8/YkTJ8Yvf/nLSj1HVSgvL48rr7wyBg4cGBER22yzTcU/UgBgbezZNZs8eXIMHz48IiJOOeWUGDp0aJSVla10TYcOHaJv377Rp0+fiIgYM2aMshQAFezZtRs0aFBERHz729+u2KVfd/bZZ0efPn2iUCjEq6++WmWzAFD72LMbrlAoxI9//OOYP39+tZ4LQO1jz67b8rLUrrvuWqXnwMZCWQo20IqvSbt48eL4n//5nzjuuOOibdu2q72+V69e0bFjxzj11FNX+vjqXpf23HPPjVGjRq3y8aVLl1a8v+IiPe+88+L4449f5frlC/+0006L7373u6s83rRp09XOWiznnntuxU/jXnHFFbHzzjvHT37ykyo9E4CNgz27Zvfdd1+Ul5dHgwYNYsCAAasUpZZbsRz1ySefVMksANRO9uyaFQqFaNmyZXz/+9+PH//4xyv9Wa2oefPm0bJly5g1a1aUl5dXySwA1E727Ia75ZZb4umnn46IiK5du8Zf/vKXaj0fgNrDnl27WbNmxXvvvRcREXvssUeVnQMbE2Upsvfvf/87Pvvss2jUqFE0btw46tevX/HY9OnT46233oq5c+fG7Nmzo1OnThWPLV26NPbaa6+YMGFCvPPOO3HzzTev8twzZ86MESNGxPDhw+ORRx6J/fbbb62zzJ49e7Wvt7uiFZfxaaedttprli/jY445ZpV/BFSHGTNmRPPmzWPQoEHRo0ePGDFiRLXPAEDNYM8WzxVXXBFnnHFGTJ06Nbbeeus1Xrds2bKK9wuFQnWMBkCJ2LPFU1ZWFrfffvs6r5s3b17MnTs3IiLat29f1WMBUEL2bNWaOHFixUvedu7cOS699FJlKYCM2LPFNX78+IqvBX//+9+v1rOhtlq1OgmZGTJkSBx44IGx1157xW677RY77bRTxWM33XRTdOjQIfbee+84/PDD47PPPqt4rG7duhXLefjw4fHFF1+s8tz33ntvLFmyJCIiLrnkknXOsvzapk2bRqFQWO3b/vvvn/LbrRadOnWK1157LXr06FHqUQAoMXu2uNq0aRO77777Wq958cUXK97/5je/WdUjAVBC9mz1u+uuuyp+uviYY44p8TQAVCV7tuosXbo0unfvHl9++WW0aNEiRowYsca7JwOwcbJni+ull16KiIgGDRpEx44dSzwN1A7KUmSvTp060bhx4/jGN74RW2+99UrfVGzVqlVsv/32seWWW0aTJk1W+YStX79+0bBhw5g/f34MHTp0pceWLVtW0Wb+3ve+FwceeOA6Z1n+BdfmzZsn/q5K6/LLL4927dqVegwAagB7tvo98MADFe8fffTRJZwEgKpmz1avcePGVfyk8N577x3HHntsiScCoCrZs1VnwIAB8a9//SsiIgYNGhTbbbddiScCoLrZs8X18ssvR0REu3bt4re//W3st99+0aZNm2jcuHFsv/32ceaZZ8Zjjz1W4imhZlGWIns33XRTLFiwIGbOnBmTJk2Kd999t+KxK664It5777345JNPYv78+bHddtut9Pq0rVu3jpNOOin23nvv2HLLLVd63tmzZ8fBBx8cLVu2jIsvvniVc1f3sjiLFy+OiPVbxh07doxmzZqt9m25Hj16rPGaJ598ct1/OACQyJ6tXi+88ELF2R06dFjpFtUAbHzs2ar3j3/8IwYNGhQHHXRQHHPMMbFgwYL4zne+Ew8++GDUqePLagAbM3u2arz55ptxzTXXRETE8ccfH927d6/S8wComezZ4lr+agMTJ06Mvn37xnPPPRfTpk2LhQsXxgcffBB33313HHrooXHCCSfEl19+WSUzQG1Tr9QDQG2z4jKOiBg5cmTFF0ifeuqpio9vuummMWzYsLj11lujbt26qzzPkiVLVnr93YiIuXPnRkREixYt1jnH/PnzY/78+Wu9ZtGiRbFo0aLVPta4ceN1ngEA1c2erbxly5bFRRddVPHr/v37exkDAFZiz264zp07r/Tr9u3bx7/+9a/YZJNNqm0GAGoHe3bdlixZEt27d49FixZFmzZt4ve//32VnQXAxsWeXbOpU6fGpEmTKn7dpUuXOP3002PHHXeMpUuXxgsvvBADBw6MyZMnx4MPPhhnnXVW/OEPfyj6HFDbKEvBBlretr3tttvivvvuW+mxBQsWVLzfqVOnVZbw559/XvH+okWLVlmIy5fxhtzm8Zprrolrr712pY8t/8boqFGj4tRTT634+NixY6Nr164REdGoUaP1PgMAqos9W3k333xzxU8QdenSJbp161btMwBQs9mzG65bt27x4osvVnzh+YMPPogjjjgiRo0aFe3bt6+2OQCo+ezZdbv++utj/PjxERExbNiw2GyzzarsLAA2Lvbsmj3//PMV7w8cODAuueSSlR7fb7/9onv37nHQQQfF66+/Hvfee29ceOGFsffeexd9FqhNlKVgAy1vC8+cOTNmzpy5xutWvF3k6syePXuVn0SdNm1aREQ888wzK92ucbljjjlmlX8AVNbq2tQAUGr2bOW8/vrrcfXVV0fEVz8Bdccdd1Tr+QDUDvbshrv//vsjImL8+PHRv3//+Mtf/hIvvPBCHHXUUfH888+7wxQAFezZtZswYUJcd911ERHRs2fPim8aA8D6sGfX7Pjjj48ZM2bE9OnTY8cdd1ztNa1atYo777wz9txzz4iIGDp0qLIU2VOWgg00Z86cKnvu6dOnR8RXt5Jc3S0c1+f2j+vLy/IAUBPZsxtuwYIFccopp8TChQsjImLw4MGx3XbbVdv5ANQe9mzldezYMcaMGRMXXHBBDB48ON55553o169fDBo0qNpnAaBmsmfXbPHixdG9e/coLy+P9u3bx8CBA4t+BgAbN3t27Vq1ahWtWrVa6zUdO3aM3XffPV599dV49NFHq2QOqE2UpaASFixYsNItHTdEWVnZGpfV8m9yft1WW20VU6ZMic0337ziY19/bd4NlZoHgKpiz26Ys88+O95+++2IiOjVq1ecfvrp1XY2ALWPPZvm17/+ddx1110xd+7cGD16tLIUACuxZ1evf//+8dprr0WdOnVi5MiRG/QyRwCwnD2bbocddohXX301Pvnkk5g7d66dTNaUpaASrrvuurjhhhsqlW3SpMlqW8lrM2vWrIiIaN26dcXHysvLK3X+ckuWLEnKA0BVsWfX36233hr33HNPRETssccevmELwDrZs2maNGkSe+21Vzz22GMxderUmD9/fjRt2rRk8wBQs9izq5o4cWLceOONERGxyy67xKuvvhqvvvrqKtf95z//qXj/wQcfjDfeeCMiIg455JA1vqQQAHmxZ9OtOP+cOXOUpciashRUQpMmTSqd3dAvopaXl1e0pFdsPC9evDgivvqpnP79+682+8Mf/jB++MMfrvaxNbWkAaDU7Nn189hjj8Vll10WERGbb755PPTQQ9GoUaMqPxeA2s2eXb3FixfHm2++GW+88UaccMIJa/29+mIyAGtiz65qypQpFXfReO211+LCCy9cZ2bFHwS68847laUAiAh7dk0KhUK88sorsfnmm8c222yz1ms/+OCDivc32WSTos8CtUmdUg8ANV2hUIh///vfceedd1a0lZcv1FatWkWhUFivt+7du6+UXV9ffPFFxfubbrppxfuLFi2KiIj69etH06ZNV3pbrmHDhqs8tvxNWQqAmsCerZzXX389TjzxxFiyZEnUr18/Ro8evc5PhAHIjz27/iZMmBB77LFHnHnmmXHXXXet9dp33303Ir76wrK7SgHky54FgKpjz66fpUuXxrbbbht77rlnDB48eK3XTpkyJV5//fWIiNh+++19Pkv2lKXga+bNm1fx/u9///to3bp17LjjjvGTn/wkbrnlloiIaNy4caWfv2HDhht0/fJbPEZEtGzZsuL9Ro0aRcuWLePnP/95zJs3b6W35UaMGLHKY8vfunTpUunfAwBUlj2b7p133onDDjssZs+eHRERgwcPjgMOOKDKzgOg9rBnK69jx46x+eabR0TE9ddfH9OnT1/tdePHj6/44nKnTp2KPgcANZc9WzmdO3der29mP/nkkxWZJ598suLjPXr0KOo8ANRM9mzl1K1bt+IOjHfddddKc3xd//79o1AoRETEscceW9Q5oDbyMnxk78svv4wXXngh/vGPf8STTz4Zzz//fMVjH374YcX7zZo1i4MOOqhiiUREzJw5M5o1a7Ze5yxvGm+oFZfxirdD/OSTTzb4uV599dX43e9+F/369YutttqqUvMAwIawZ4tr6tSpceihh8bUqVMjIuLSSy+NXr16VclZANR89mzx1K1bN84///y45pprYvLkydGtW7cYM2bMSnPPnDlzpW/Ynn/++UWfA4Caw54FgKpjzxbPWWedFY899lh8+umncemll8bQoUOjrKxspWtuvfXWGDZsWER8VRy79NJLiz4H1DbKUmTvyCOPjH/84x+rfWyTTTaJrl27Rrdu3eLwww+PRo0arXLN/Pnzq3S+FW/zuGJzeUNNmjQp9t5771i4cGHMnDkz7r///mKMBwBrZc8WV+/evWPy5MkR8dXtpr/1rW/F7bffvtbMOeecUyWzAFB69mxx9enTJ0aPHh1vvPFGPPPMM7HDDjvEqaeeGttvv3188skncc8998Rnn30WERG9evWKww8/vErmAKBmsGcBoOrYs8Vz0kknxW233Rb//Oc/Y/jw4TFx4sQ47bTTYqut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",
      "text/plain": [
       "<Figure size 2400x1200 with 10 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 随机抽取8张图片\n",
    "num_images = 5\n",
    "random_indices = np.random.choice(images.shape[0], num_images, replace=False)\n",
    "original_images = images[random_indices]\n",
    "\n",
    "# 对每张图片进行数据增强\n",
    "augmented_images = [augment_image(image) for image in original_images]\n",
    "\n",
    "# 设置画布\n",
    "plt.figure(figsize=(12, 6), dpi=200)\n",
    "\n",
    "# 展示原始图像\n",
    "for i in range(num_images):\n",
    "    plt.subplot(2, num_images, i + 1)\n",
    "    plt.imshow(original_images[i], cmap='gray')\n",
    "    plt.title(f\"原图 {i+1}\")\n",
    "    plt.axis('off')\n",
    "\n",
    "# 展示增强后的图像\n",
    "for i in range(num_images):\n",
    "    plt.subplot(2, num_images, num_images + i + 1)\n",
    "    plt.imshow(augmented_images[i], cmap='gray')\n",
    "    plt.title(f\"增强 {i+1}\")\n",
    "    plt.axis('off')\n",
    "\n",
    "plt.tight_layout()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "316f120b",
   "metadata": {
    "ExecuteTime": {
     "end_time": "2024-12-01T04:27:09.361328Z",
     "start_time": "2024-12-01T04:27:09.291660Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x25ae25d8bd0>"
      ]
     },
     "execution_count": 14,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.axis('off')\n",
    "plt.imshow(images[0], cmap='gray')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "71d809a3",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.11.5"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
